Augmented reality (AR) provides a view of a physical, real-world environment whose elements are augmented (or supplemented) by computer-generated sensory input such as sound, text, graphics, or video. Augmented reality is useful in various applications including construction, repair, maintenance, education, navigation, design, military, medical, or entertainment, for example. One of the key components of augmented reality is the establishment of the position (x, y, z) and the orientation (θ, φ, ζ) of an object in a physical space—hereinafter referred to as an object's “pose.” Typically the object whose pose is determined is a mobile device that itself provides the augmented view of reality. An accurate means of establishing pose uses vision-based algorithms. A mobile device may receive one or more images or signals from a physical space and these images or signals may be input to the vision-based algorithms for determining the pose of the mobile device. These algorithms recognize unique pre-identified visual tracking cues in the physical space by comparing the received images and/or signals from the physical space with stored tracking cues. The tracking cues may be known images or point clouds of the space, for example. For small physical spaces, this approach is effective, but as the number of tracking cues increases (such as in a large building with many rooms or open spaces), the computational time required to extract pose increases dramatically.
In conventional systems, pre-identified tracking cues are stored in a tracking cue database that does not delineate the tracking cues based on the physical location of the mobile device. When the system attempts to determine the pose of the mobile device, it receives one or more images or signals from the device and compares them to the tracking cues in the entire tracking cue database, regardless of the actual physical location of the device. This approach requires a substantial amount of computational resources, especially when dealing with large physical spaces with numerous tracking cues. The present invention addresses these problems.